package org.example.express.service;

import org.example.model.common.Result;
import org.example.model.domain.express.ExpressActivityMessage;
import org.example.model.domain.express.ExpressDispatchMessage;
import org.example.model.domain.express.ExpressSystemMessage;
import org.example.model.h5.LastMessageVo;
import org.example.model.h5.MessageVo;

import java.util.ArrayList;
import java.util.List;

public interface MessageService {
    MessageVo getMessage(Long registerIp);

    public ArrayList<Integer> countUnread(Long registerIp);

    Result updateSysMessage(Long registerIp);

    Result updateDispatchMessage(Integer id);

    Result updateActivityMessage();

    Result getRedis();

    LastMessageVo lastMessage(Long registerIp);


    ExpressActivityMessage getLastOneActivityMessage(Long registerIp);

    ExpressSystemMessage getLastOneSysMessage(Long registerIp);

    ExpressDispatchMessage getLastOneDisMessage(Long registerIp);

    List<ExpressActivityMessage> getActivityMessage();

    List<ExpressSystemMessage> getSysMessage(Long registerIp);

    List<ExpressDispatchMessage> getLastMessage(Long registerIp);
}
